Design and Implementation of a Coordination Service for Distributed Applications (In-memory Paxos)

نویسنده

  • Christian Mayer
چکیده

Coordination of different, independent processes is a very important aspect in the area of distributed systems. In order to coordinate each other, participants of a distributed system often have to agree on some common knowledge such as locking of a shared resource. The general problem how to reach agreement on some value is also known as consensus problem. In many practical systems, the consensus problem is outsourced to a distributed system consisting of multiple servers to increase its availability. Each server can be contacted by clients that intend to reach consensus about a specific value. Examples are Google’s locking service Chubby or Yahoo’s distributed file system Zookeeper. The standard Paxos algorithm solves this problem in an environment where nodes may recover after a crash and messages can have infinite delay. However, a system based on the classical Paxos algorithm makes use of expensive stable storage operations to guarantee that a crashed and recovered Paxos server is still able to participate in the protocol. Studies have shown that these disk costs are the bottleneck of the whole system. In this work a performance-oriented version of Paxos will be investigated that still solves the consensus problem, but trades availability of the consensus system against performance by not using stable storage operations. Without careful design this can be problematic, because a Paxos server that has lost its memory can be dangerous for the success of the protocol. This can be solved by not allowing a crashed and recovered Paxos server to participate in the protocol anymore. Instead, a recovered server rejoins the protocol with a new id, so that no active processes assume anything about the recovered process. In order to join the group of active processes, a majority of servers has to be active and agree on this. Our evaluations show, that a coordination system based on the in-memory Paxos approach has a very short response time of only one millisecond and high throughput up to 18000 write requests per second.

برای دانلود رایگان متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

The Variation of Acquisition, Consolidation Memory and Coordination Pattern of Elbow Joint in Short Service Badminton before and after Aerobic Training

Background. Consider the fact that the implementation of aerobic exercise can be effective in the learning and acquisition process, and that training athletes to acquire new skills is appropriately done in terms of the primacy and recency of the training time for aerobic activities such as the warm-up. Objectives. The purpose of the present study was to investigate the effect of moderate-inten...

متن کامل

Distributed Generic Name Service

On many distributed platforms, consensus among multiple servers should be obtained in order to maintain consistent system state. Paxos has been selected as the core of many different distributed services, such as lock services and storage services. This report presents an empirical study on a name service based on Paxos in a virtualized environment. Details of the design as well as matters conc...

متن کامل

A Tuple Space Web Service for Distributed Programming - Simplifying Distributed Web Services Applications

This paper describes a new tuple space web service for coordination and communication in distributed web applications. This web service is based on the Linda programming model. Linda is a coordination language for parallel and distributed processing, providing a communication mechanism based on a logically shared memory space. The original Linda model has been extended through the provision of ...

متن کامل

Brief Announcement: Decoupled Quorum-Based Byzantine-Resilient Coordination in Open Distributed Systems

The tuple space coordination model, originally introduced in the Linda programming language [2], uses a shared memory object called a tuple space to support coordination that is decoupled both in time – processes do not have to be active at the same time – and space – processes do not need to know each others’ addresses. The tuple space can be considered to be a kind of storage that stores tupl...

متن کامل

CS240H: Implementing Paxos in Haskell

The Paxos algorithm is a distributed consensus algorithm, each round of which can be used to agree on a value proposed by a member of the group. The algorithm is tolerant to non-Byzantine errors (e.g. unreliable network environment and disconnected nodes). Despite the simplicity of the algorithm, implementing Paxos for real world applications in traditional languages can be involving and non-tr...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

عنوان ژورنال:

دوره   شماره 

صفحات  -

تاریخ انتشار 2013